This invention relates to a method of forming free-form curves and free-form surfaces, and more particularly is applicable to an improvement of a designing device using the technique of CAD/CAM (computer aided design/computer aided manufacturing) for example.
In the case where the technique of CAD is used to design the shape of an object having free-form surface (geometric modeling), the designer usually designates a plurality of points (referred to as nodal points) in a three-dimensional space which are passed through by the curved surface. A surface represented by a so-called wire-frame is formed by causing a desired vector function to calculate a boundary curve network which connects the designated nodal points. Thereby, a number of framing spaces surrounded by the boundary curves may be formed (such processing is referred to as framing process).
The boundary curve network formed by such framing process by itself represents a generalized shape of design intended by the designer. A free-form surface (referring to one which cannot be defined by a quadratic function) designed as a whole by the designer may be generated, if it is possible by interpolation to obtain a curved surface which may be represented by a predetermined vector function using the boundary curve surrounding the respective framing spaces. Here, the curved surface pasted on each framing space forms a fundamental element for constructing the total curved surface, and it is referred to as a patch.
In order to give a more natural appearance of the shape to the generated free-form surface as a whole, a method of forming free-form curve (Japanese Patent Application No. 60-277448) has been proposed, in which, for two framing spaces adjoining each other with an interposing common boundary, the control side vectors around the common boundary is redetermined so as to paste a patch which satisfies the condition of continuity of tangential planes at the common boundary.
FIG. 1, illustrates the principle of such free-form surface forming method. Patch vector S(u,v)1 and patch vector S(u,v)2, which are to be pasted onto quadrilateral framing spaces, are represented by a vector function S(u,v) consisting of a third order Bezier expression In order to smoothly connect the two patch vectors S(u,v)1 and vector S(u,v)2, control side vectors, vectors a1, a2, c1, and c2 are determined so that the condition of continuity of tangential planes is satisfied at the common boundary COM of the adjoining patch vectors S(u,v)1 and S(u,v)2 on the basis of the nodal points, vector P(00), vector P(30)1, vector P(33)1, vector P(03), vector P(33)2 and vector P(30)2, which are given by the framing process; and the control point vectors, vector P(11)1, vector P(12)1, vector P(11)2 and vector P(12)2, are redetermined by these control side vectors.
As a result of further applying such technique to other common boundaries, the patch vectors, vector S(u,v)1 and vector S(u,v)2, may be smoothly connected to adjoining patches in accordance with the condition of continuity of tangential planes.
Here, the vector function vector S(u,v) formed of a third order Bezier expression is represented using parameters u and v in the u direction and the v direction and shift operators E and F by the following formula: EQU S(u,v)=(1-u+uE).sup.3 (1-v+vF).sup.3 P(00) (1)
and is related to the control point vectors P(ij) as follows: EQU E.multidot.P(ij)=P(i+1j)(i,j=0, 1, 2) (2) EQU F.multidot.P(ij)=P(ij+1)(i,j=0, 1, 2) (3) EQU 0.ltoreq.u.ltoreq.1 (4) EQU 0.ltoreq.v.ltoreq.1 (5)
Further, a tangential plane refers to the plane formed by the tangential vectors in the u direction and the v direction at each point on the common boundary. For example, the condition of continuity of tangential planes is satisfied with respect to the common boundary COM12 of FIG. 1 when the tangential planes of the patch vectors, vector S(u,v)1 and vector S(u,v)2, are identical to each other.
According to this method, it is possible to design the shape of an object that has a smooth changing surface geometry.
In such a designing device, it is presumably convenient if a desired curve may be projected with respect to a generated patch, because it is for example possible to extract the projected curve to observe the cross-sectional geometry thereof or to observe the state after grooving or boring.
It is also possible to observe a parting line at the time of injection molding or to observe the state where a seal is pasted onto a curved surface.
Further, a new patch may be generated by using the generated curve.